public class Main {
    public static void main(String[] args) throws InterruptedException {

        PasswordStateMachine sm = new PasswordStateMachine();

        // 示例 1：密码输入正确
        System.out.println("\n=== 示例 1：输入正确密码 ===");
        sm.inputChar('1');
        sm.inputChar('2');
        sm.inputChar('3');
        sm.inputChar('4');

        // 示例 2：连续输错 3 次（触发锁定）
        System.out.println("\n=== 示例 2：连续输错 3 次 ===");
        PasswordStateMachine sm2 = new PasswordStateMachine();
        sm2.inputChar('9');
        sm2.inputChar('9');
        sm2.inputChar('9');
        sm2.inputChar('9');  // 1次错误

        sm2.inputChar('8');
        sm2.inputChar('8');
        sm2.inputChar('8');
        sm2.inputChar('8');  // 2次错误

        sm2.inputChar('7');
        sm2.inputChar('7');
        sm2.inputChar('7');
        sm2.inputChar('7');  // 第3次错误 → 锁定

        // 模拟等待
        System.out.println("\n模拟等待 3 秒...");
        Thread.sleep(3000);

        sm2.inputChar('1'); // 尝试输入，但仍在锁定中

    }
}
